package gui;

import gui.util.TableModelUsuario;

import java.awt.BorderLayout;
import java.util.ArrayList;
import java.util.List;

import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;

import model.Usuario;
import controller.UsuarioController;

public class ConsultaUsuariosBloqueadosGUI extends JFrame {
	private static final long serialVersionUID = 1L;

	private JTable table;
	private TableModelUsuario model;

	public ConsultaUsuariosBloqueadosGUI() {
		this.setTitle("Consulta de Usuarios Bloqueados");
		this.setSize(550, 500);
		this.setLocationRelativeTo(null);
		this.setLayout(new BorderLayout());
		this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
		this.setResizable(false);

		this.add(new JScrollPane(getTable(), JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
				JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED), BorderLayout.CENTER);
		this.setVisible(true);

		carregar();
	}

	public JTable getTable() {
		if (table == null){
			table = new JTable(getModel());
		}
		return table;
	}

	public TableModelUsuario getModel(){
		if (model == null){
			model = new TableModelUsuario();
		}
		return model;
	}

	private void carregar() {
		List<Usuario> usuarios= null;
		try {
			usuarios = (ArrayList<Usuario>) UsuarioController.getInstance().buscarUsuariosBloqueados();
		} catch (Exception e) {
			JOptionPane.showMessageDialog(null, e.getMessage());
			e.printStackTrace();
		}
		getModel().setData(usuarios);
		getModel().fireTableDataChanged();
	}


}
